package hackpai

import (
	"distributed/message"
	"regexp"
)

var recentRegex = regexp.MustCompile(`<div[^<]*<h2[^<]*<a[^>]*data-id=\\"([0-9]*)\\"[^>]*href=\\"([^"]*)\\"[^>]*>([^<]*)[^<]*<\\/a>[^<]*<\\/h2>[^<]*<a[^<]*href=\\"[^"]*\\"[^>]*>([^<]*)<\\/a>[^<]*<\\/div>`)

// [ result 44 ] $1: 1573399106547;
// $2: https://hacpai.com/article/1573399106547;
// $3: 有些事当了程序员才懂;
// $4: \n                        常常感到头很大 [图片] 关于加班 面试的时候和 HR 说的好好的 [图片] 甚至难掩鸡冻的小情绪 [图片] 入职后才发现，全公司只有 HR 一个人 6 点下班 关于技术 程序员没有长的好看的 长的好看的技术肯定不好 [图片] 程序员没有穿的好看的 穿的好看的技术肯定不好 [图片] 程序员没有口才好的 口才好的技术肯定 ..\n                   ;

func Parser(input string) *message.ReptileResp {
	res := recentRegex.FindAllStringSubmatch(input, -1)
	resLen := len(res)

	rt := make([]message.BriefInformation, resLen)
	for i, v := range res {
		rt[i] = message.BriefInformation{
			DataID:       v[1],
			URL:          v[2],
			Title:        v[3],
			Introduction: v[4],
		}
	}
	return &message.ReptileResp{ParserResult: &rt}
}
